package com.geek.javase.ch10.work.listwork.work1;

import java.util.LinkedList;

/*
练习1：用LinkedList集合，模拟队列操作(存入的元素是Person对象)  先进先出
 */
public class Queue {
    private LinkedList<Person> queue;

    public Queue() {
        queue = new LinkedList<>();
    }

    // 添加元素到队列末尾
    public void put(Person person) {
        queue.offer(person);
    }

    // 从队列头部获取并移除元素
    public Person get() {
        return queue.poll();
    }

    // 判断队列是否为空
    public boolean isEmpty() {
        return queue.isEmpty();
    }

    // 获取队列的大小
    public int size() {
        return queue.size();
    }

    // 查看但不移除队列头部元素
    public Person peek() {
        return queue.peek();
    }

    @Override
    public String toString() {
        return "Queue{" +
                "queue=" + queue +
                '}';
    }
}
